package com.personal.portal.common.entity;

import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * 基础实体类（包含公共字段）
 *
 * @author zhanghui
 * @version 1.0.0
 * @since 2025-11-10
 */
@Data
public class BaseEntity {

    /**
     * 主键ID
     */
    @Id(keyType = KeyType.Auto)
    private Long id;

    /**
     * 创建人
     */
    private String createBy;

    /**
     * 创建时间
     */
    private String createTime;

    /**
     * 更新人
     */
    private String updateBy;

    /**
     * 更新时间
     */
    private String updateTime;

    /**
     * 逻辑删除标志（0-未删除，1-已删除）
     */
    @Column(isLogicDelete = true)
    private Integer deleted;

    /**
     * 是否启用（disabled-禁用，enabled-启用）
     */
    private String status;

    /**
     * 备注信息
     */
    private String remarks;
}